package org.practice.servlet;


import java.io.File;
import java.io.FileFilter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;

public class DeleteFileServlet extends HttpServlet {
	/*web应用停止或重新部署的时候才销毁，*/
	public void destroy() {
		this.getServletContext().log("==========销毁DeleteFileServlet=========");
		super.destroy(); 
	}
	
	/*web应用启动的时候初始化，只初始化一次，以后就可以处理相关请求*/
	public void init() throws ServletException {
		this.getServletContext().log("==========开始初始化DeleteFileServlet=========");
		this.getInitParameter("");//获得servlet初始化参数
		this.getServletContext().getInitParameter("");//通过servlet对象获得ServletContext(tomcat容器)初始化参数
		this.getServletConfig().getInitParameter("");//通过servlet对象获得ServletContext(tomcat容器)初始化参数
//		File file = new File(".");
//		File[] subFiles = file.listFiles();
//		for(File f : subFiles){
//			if(f.getName().endsWith("xls")){
//				f.delete();
//			}
//		}
		
		File file = new File(".");//当前目录：apache-tomcat-6.0.32\bin
		/* FileFilter接口的实现类用于过滤File对象(抽象路径名),File对象调用listFiles方法会迭代目录的所有文件
		 * 在迭代的时候会调用FileFilter实现类对象的accept方法做判断,如果符合过滤条件，就把该File对象文件放入数组中
		 * File对象与FileFilter实现类对象的关系是依赖关系
		 */
		File[] subFiles = file.listFiles(new FileFilter(){
			public boolean accept(File pathname){
				if(pathname.getName().endsWith("xls")){
					return true;
				}
				return false;
			}
		});
		for(File f : subFiles){
			f.delete();
		}
	}

}
